[INFO] cloning repository https://github.com/ogre2007/machina
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/ogre2007/machina" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fogre2007%2Fmachina", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fogre2007%2Fmachina'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] dde6070a4507bc0004d54d081a1c7231d963495d
[INFO] fixing ogre2007/machina against try#622891a4e29178280638a6b63a8908bde2c0c854+cargoflags=-Zfix-edition=end=2015,2024 for pr-157817-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fogre2007%2Fmachina" "/workspace/builds/worker-4-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/ogre2007/machina
[INFO] finished tweaking git repo https://github.com/ogre2007/machina
[INFO] tweaked toml for git repo https://github.com/ogre2007/machina written to /workspace/builds/worker-4-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/ogre2007/machina on toolchain 622891a4e29178280638a6b63a8908bde2c0c854
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/ogre2007/machina already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/source:/opt/rustwide/workdir:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3a6becf2bc8dde7f3fa57ede90e4f284e72d296796fc446bbb1e2c7cc0530151" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 0a30556d3c6a311e771a45862ff9f2eedbc12cc3a3d01f939e9a5db1f990b83c
[INFO] running `Command { std: "docker" "start" "0a30556d3c6a311e771a45862ff9f2eedbc12cc3a3d01f939e9a5db1f990b83c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "0a30556d3c6a311e771a45862ff9f2eedbc12cc3a3d01f939e9a5db1f990b83c" "/opt/rustwide/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "0a30556d3c6a311e771a45862ff9f2eedbc12cc3a3d01f939e9a5db1f990b83c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=" "-e" "RUSTDOCFLAGS=" "-w" "/opt/rustwide/workdir" "--user" "0:0" "0a30556d3c6a311e771a45862ff9f2eedbc12cc3a3d01f939e9a5db1f990b83c" "/opt/rustwide/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "fix" "--allow-no-vcs" "--allow-dirty" "--frozen" "--all" "--all-targets" "--message-format=json" "-Zfix-edition=end=2015,2024", kill_on_drop: false }`
[INFO] [stderr] crater-edition-check: migrating to next edition
[INFO] [stderr]    Migrating crates/compatra/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating crates/compatra-arch/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating crates/compatra-arch-arm64/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating crates/compatra-cli/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating crates/compatra-runtime/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating crates/compatra-threading/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating crates/machoscope-analysis/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating crates/machoscope/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Compiling glob v0.3.3
[INFO] [stderr]    Compiling libc v0.2.184
[INFO] [stderr]    Compiling prettyplease v0.2.37
[INFO] [stderr]    Compiling memchr v2.8.0
[INFO] [stderr]    Compiling regex-syntax v0.8.10
[INFO] [stderr]    Compiling libloading v0.8.9
[INFO] [stderr]    Compiling either v1.15.0
[INFO] [stderr]    Compiling bindgen v0.71.1
[INFO] [stderr]    Compiling cc v1.2.61
[INFO] [stderr]    Compiling bitflags v2.11.0
[INFO] [stderr]    Compiling itertools v0.13.0
[INFO] [stderr]    Compiling clang-sys v1.8.1
[INFO] [stderr]    Compiling nom v7.1.3
[INFO] [stderr]    Compiling rustc-hash v2.1.2
[INFO] [stderr]     Checking compatra v0.8.0 (/opt/rustwide/workdir/crates/compatra)
[INFO] [stderr]    Migrating crates/compatra/src/lib.rs from 2021 edition to 2024
[INFO] [stderr]     Checking compatra-arch v0.8.0 (/opt/rustwide/workdir/crates/compatra-arch)
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Migrating crates/compatra-arch/src/lib.rs from 2021 edition to 2024
[INFO] [stderr]    Compiling compatra-runtime v0.8.0 (/opt/rustwide/workdir/crates/compatra-runtime)
[INFO] [stderr]    Migrating crates/compatra-runtime/build.rs from 2021 edition to 2024
[INFO] [stderr]     Checking compatra-arch-arm64 v0.8.0 (/opt/rustwide/workdir/crates/compatra-arch-arm64)
[INFO] [stderr]    Migrating crates/compatra-arch-arm64/src/lib.rs from 2021 edition to 2024
[INFO] [stderr]    Compiling cmake v0.1.58
[INFO] [stderr]     Checking machoscope-analysis v0.8.0 (/opt/rustwide/workdir/crates/machoscope-analysis)
[INFO] [stderr]    Migrating crates/machoscope-analysis/src/lib.rs from 2021 edition to 2024
[INFO] [stderr]    Compiling regex-automata v0.4.14
[INFO] [stderr]     Checking compatra-threading v0.8.0 (/opt/rustwide/workdir/crates/compatra-threading)
[INFO] [stderr]    Migrating crates/compatra-threading/src/lib.rs from 2021 edition to 2024
[INFO] [stderr]    Compiling cexpr v0.6.0
[INFO] [stderr]     Checking thiserror v1.0.69
[INFO] [stderr]        Fixed crates/machoscope-analysis/src/runtime_hooks.rs (3 fixes)
[INFO] [stderr]    Compiling regex v1.12.3
[INFO] [stderr]    Compiling unicorn-engine-sys v2.1.5
[INFO] [stderr]     Checking unicorn-engine v2.1.5
[INFO] [stderr]    Migrating crates/compatra-runtime/src/lib.rs from 2021 edition to 2024
[INFO] [stderr]        Fixed crates/compatra-runtime/src/macos/syscall_plugins.rs (1 fix)
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/compatra-runtime/src/macos/arch_arm64/runner.rs:468:15
[INFO] [stdout]     |
[INFO] [stdout] 468 |           match section_pointer_values_with_slide(
[INFO] [stdout]     |  _______________^
[INFO] [stdout] 469 | |             emulator,
[INFO] [stdout] 470 | |             &image.binary,
[INFO] [stdout] 471 | |             image.slide,
[INFO] [stdout] 472 | |             "__mod_init_func",
[INFO] [stdout] 473 | |         ) {
[INFO] [stdout]     | |         ^
[INFO] [stdout]     | |         |
[INFO] [stdout]     | |_________this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |           up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 500 |               Err(err) => {
[INFO] [stdout]     |                   ---
[INFO] [stdout]     |                   |
[INFO] [stdout]     |                   `err` calls a custom destructor
[INFO] [stdout]     |                   `err` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 510 |       }
[INFO] [stdout]     |       - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: `err` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/compatra-runtime/src/macos/arch_arm64/runner.rs:538:15
[INFO] [stdout]     |
[INFO] [stdout] 538 |           match section_pointer_values_with_slide(
[INFO] [stdout]     |  _______________^
[INFO] [stdout] 539 | |             emulator,
[INFO] [stdout] 540 | |             &image.binary,
[INFO] [stdout] 541 | |             image.slide,
[INFO] [stdout] 542 | |             "__mod_term_func",
[INFO] [stdout] 543 | |         ) {
[INFO] [stdout]     | |         ^
[INFO] [stdout]     | |         |
[INFO] [stdout]     | |_________this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |           up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 570 |               Err(err) => {
[INFO] [stdout]     |                   ---
[INFO] [stdout]     |                   |
[INFO] [stdout]     |                   `err` calls a custom destructor
[INFO] [stdout]     |                   `err` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 580 |       }
[INFO] [stdout]     |       - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: `err` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/compatra-runtime/src/macos/arch_arm64/time_imports.rs:209:47
[INFO] [stdout]     |
[INFO] [stdout] 205 |                     let mut runtime = match thread_runtime.lock() {
[INFO] [stdout]     |                         -----------
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         `runtime` calls a custom destructor
[INFO] [stdout]     |                         `runtime` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 209 |                     if let Ok(yield_result) = yield_active_arm64_thread(emu, &mut runtime, 0, lr) {
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                               |
[INFO] [stdout]     |                                               this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                               up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 212 |                 }
[INFO] [stdout]     |                 - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `runtime` invokes this custom destructor
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/poison/mutex.rs:741:0
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/compatra-runtime/src/macos/core/emulation.rs:112:38
[INFO] [stdout]     |
[INFO] [stdout] 112 |                 if let Ok(entries) = std::fs::read_dir(&dir) {
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                      |
[INFO] [stdout]     |                                      this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                                      up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 113 |                     for entry in entries.flatten() {
[INFO] [stdout]     |                         -----    -----------------
[INFO] [stdout]     |                         |        |
[INFO] [stdout]     |                         |        `iter` calls a custom destructor
[INFO] [stdout]     |                         |        `iter` will be dropped later as of Edition 2024
[INFO] [stdout]     |                         |        this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                         |        `#1` will be dropped later as of Edition 2024
[INFO] [stdout]     |                         `entry` calls a custom destructor
[INFO] [stdout]     |                         `entry` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 122 |             }
[INFO] [stdout]     |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sys/fs/unix.rs:1011:0
[INFO] [stdout] note: `iter` invokes this custom destructor
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sys/fs/unix.rs:1011:0
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sys/fs/unix.rs:1011:0
[INFO] [stdout] note: `entry` invokes this custom destructor
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sys/fs/unix.rs:1011:0
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/compatra-runtime/src/macos/core/emulation.rs:112:38
[INFO] [stdout]     |
[INFO] [stdout] 112 |                 if let Ok(entries) = std::fs::read_dir(&dir) {
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                      |
[INFO] [stdout]     |                                      this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                                      up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 113 |                     for entry in entries.flatten() {
[INFO] [stdout]     |                         -----    -----------------
[INFO] [stdout]     |                         |        |
[INFO] [stdout]     |                         |        `iter` calls a custom destructor
[INFO] [stdout]     |                         |        `iter` will be dropped later as of Edition 2024
[INFO] [stdout]     |                         |        this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                         |        `#1` will be dropped later as of Edition 2024
[INFO] [stdout]     |                         `entry` calls a custom destructor
[INFO] [stdout]     |                         `entry` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 122 |             }
[INFO] [stdout]     |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sys/fs/unix.rs:1011:0
[INFO] [stdout] note: `iter` invokes this custom destructor
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sys/fs/unix.rs:1011:0
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sys/fs/unix.rs:1011:0
[INFO] [stdout] note: `entry` invokes this custom destructor
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sys/fs/unix.rs:1011:0
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/compatra-runtime/src/macos/syscall_plugins.rs:912:19
[INFO] [stdout]     |
[INFO] [stdout] 888 |             let entry = match File::open(&resolved) {
[INFO] [stdout]     |                 -----
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 `entry` calls a custom destructor
[INFO] [stdout]     |                 `entry` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 912 |             match runtime.fd_table.lock() { Ok(mut table) => {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                   |
[INFO] [stdout]     |                   this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                   up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 929 |         }
[INFO] [stdout]     |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/poison/mutex.rs:741:0
[INFO] [stdout] note: `entry` invokes this custom destructor
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/os/fd/owned.rs:196:0
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/compatra-runtime/src/unicorn.rs:440:52
[INFO] [stdout]     |
[INFO] [stdout] 439 |                         let mut handler_opt = emu.syscall_handler.take();
[INFO] [stdout]     |                             ---------------
[INFO] [stdout]     |                             |
[INFO] [stdout]     |                             `handler_opt` calls a custom destructor
[INFO] [stdout]     |                             `handler_opt` will be dropped later as of Edition 2024
[INFO] [stdout] 440 |                         if let Some(mut handler) = handler_opt.take() {
[INFO] [stdout]     |                                                    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                    |
[INFO] [stdout]     |                                                    this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                                    up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 444 |                     })
[INFO] [stdout]     |                     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: `handler_opt` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking machoscope v0.8.0 (/opt/rustwide/workdir/crates/machoscope)
[INFO] [stderr]     Checking compatra-cli v0.8.0 (/opt/rustwide/workdir/crates/compatra-cli)
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/compatra-runtime/src/macos/arch_arm64/runner.rs:468:15
[INFO] [stdout]     |
[INFO] [stdout] 468 |           match section_pointer_values_with_slide(
[INFO] [stdout]     |  _______________^
[INFO] [stdout] 469 | |             emulator,
[INFO] [stdout] 470 | |             &image.binary,
[INFO] [stdout] 471 | |             image.slide,
[INFO] [stdout] 472 | |             "__mod_init_func",
[INFO] [stdout] 473 | |         ) {
[INFO] [stdout]     | |         ^
[INFO] [stdout]     | |         |
[INFO] [stdout]     | |_________this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |           up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 500 |               Err(err) => {
[INFO] [stdout]     |                   ---
[INFO] [stdout]     |                   |
[INFO] [stdout]     |                   `err` calls a custom destructor
[INFO] [stdout]     |                   `err` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 510 |       }
[INFO] [stdout]     |       - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: `err` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Migrating crates/machoscope/src/lib.rs from 2021 edition to 2024
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/compatra-runtime/src/macos/arch_arm64/runner.rs:538:15
[INFO] [stdout]     |
[INFO] [stdout] 538 |           match section_pointer_values_with_slide(
[INFO] [stdout]     |  _______________^
[INFO] [stdout] 539 | |             emulator,
[INFO] [stdout] 540 | |             &image.binary,
[INFO] [stdout] 541 | |             image.slide,
[INFO] [stdout] 542 | |             "__mod_term_func",
[INFO] [stdout] 543 | |         ) {
[INFO] [stdout]     | |         ^
[INFO] [stdout]     | |         |
[INFO] [stdout]     | |_________this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |           up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 570 |               Err(err) => {
[INFO] [stdout]     |                   ---
[INFO] [stdout]     |                   |
[INFO] [stdout]     |                   `err` calls a custom destructor
[INFO] [stdout]     |                   `err` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 580 |       }
[INFO] [stdout]     |       - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: `err` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/compatra-runtime/src/macos/arch_arm64/time_imports.rs:209:47
[INFO] [stdout]     |
[INFO] [stdout] 205 |                     let mut runtime = match thread_runtime.lock() {
[INFO] [stdout]     |                         -----------
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         `runtime` calls a custom destructor
[INFO] [stdout]     |                         `runtime` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 209 |                     if let Ok(yield_result) = yield_active_arm64_thread(emu, &mut runtime, 0, lr) {
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                               |
[INFO] [stdout]     |                                               this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                               up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 212 |                 }
[INFO] [stdout]     |                 - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `runtime` invokes this custom destructor
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/poison/mutex.rs:741:0
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/compatra-runtime/src/macos/core/emulation.rs:112:38
[INFO] [stdout]     |
[INFO] [stdout] 112 |                 if let Ok(entries) = std::fs::read_dir(&dir) {
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                      |
[INFO] [stdout]     |                                      this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                                      up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 113 |                     for entry in entries.flatten() {
[INFO] [stdout]     |                         -----    -----------------
[INFO] [stdout]     |                         |        |
[INFO] [stdout]     |                         |        `iter` calls a custom destructor
[INFO] [stdout]     |                         |        `iter` will be dropped later as of Edition 2024
[INFO] [stdout]     |                         |        this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                         |        `#1` will be dropped later as of Edition 2024
[INFO] [stdout]     |                         `entry` calls a custom destructor
[INFO] [stdout]     |                         `entry` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 122 |             }
[INFO] [stdout]     |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sys/fs/unix.rs:1011:0
[INFO] [stdout] note: `iter` invokes this custom destructor
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sys/fs/unix.rs:1011:0
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sys/fs/unix.rs:1011:0
[INFO] [stdout] note: `entry` invokes this custom destructor
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sys/fs/unix.rs:1011:0
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/compatra-runtime/src/macos/core/emulation.rs:112:38
[INFO] [stdout]     |
[INFO] [stdout] 112 |                 if let Ok(entries) = std::fs::read_dir(&dir) {
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                      |
[INFO] [stdout]     |                                      this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                                      up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 113 |                     for entry in entries.flatten() {
[INFO] [stdout]     |                         -----    -----------------
[INFO] [stdout]     |                         |        |
[INFO] [stdout]     |                         |        `iter` calls a custom destructor
[INFO] [stdout]     |                         |        `iter` will be dropped later as of Edition 2024
[INFO] [stdout]     |                         |        this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                         |        `#1` will be dropped later as of Edition 2024
[INFO] [stdout]     |                         `entry` calls a custom destructor
[INFO] [stdout]     |                         `entry` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 122 |             }
[INFO] [stdout]     |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sys/fs/unix.rs:1011:0
[INFO] [stdout] note: `iter` invokes this custom destructor
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sys/fs/unix.rs:1011:0
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sys/fs/unix.rs:1011:0
[INFO] [stdout] note: `entry` invokes this custom destructor
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sys/fs/unix.rs:1011:0
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/compatra-runtime/src/macos/syscall_plugins.rs:912:19
[INFO] [stdout]     |
[INFO] [stdout] 888 |             let entry = match File::open(&resolved) {
[INFO] [stdout]     |                 -----
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 `entry` calls a custom destructor
[INFO] [stdout]     |                 `entry` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 912 |             match runtime.fd_table.lock() { Ok(mut table) => {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                   |
[INFO] [stdout]     |                   this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                   up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 929 |         }
[INFO] [stdout]     |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/poison/mutex.rs:741:0
[INFO] [stdout] note: `entry` invokes this custom destructor
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/os/fd/owned.rs:196:0
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/compatra-runtime/src/unicorn.rs:440:52
[INFO] [stdout]     |
[INFO] [stdout] 439 |                         let mut handler_opt = emu.syscall_handler.take();
[INFO] [stdout]     |                             ---------------
[INFO] [stdout]     |                             |
[INFO] [stdout]     |                             `handler_opt` calls a custom destructor
[INFO] [stdout]     |                             `handler_opt` will be dropped later as of Edition 2024
[INFO] [stdout] 440 |                         if let Some(mut handler) = handler_opt.take() {
[INFO] [stdout]     |                                                    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                    |
[INFO] [stdout]     |                                                    this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                                    up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 444 |                     })
[INFO] [stdout]     |                     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: `handler_opt` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]        Fixed crates/machoscope/src/lib.rs (4 fixes)
[INFO] [stderr]    Migrating crates/compatra-cli/src/main.rs from 2021 edition to 2024
[INFO] [stderr]        Fixed crates/compatra-cli/src/main.rs (4 fixes)
[INFO] [stderr]    Migrating crates/compatra-cli/tests/compat_mode_macos.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating crates/machoscope/src/main.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating crates/machoscope/tests/rustdoor_fast_mode.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating crates/machoscope/tests/amos_private_access.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating crates/machoscope/tests/machoman_profile_strings.rs from 2021 edition to 2024
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 4m 39s
[INFO] [stderr] crater-edition-check: compatra v0.8.0 (/opt/rustwide/workdir/crates/compatra) updating edition from 2021 to 2024
[INFO] [stderr] crater-edition-check: compatra-arch v0.8.0 (/opt/rustwide/workdir/crates/compatra-arch) updating edition from 2021 to 2024
[INFO] [stderr] crater-edition-check: compatra-arch-arm64 v0.8.0 (/opt/rustwide/workdir/crates/compatra-arch-arm64) updating edition from 2021 to 2024
[INFO] [stderr] crater-edition-check: compatra-cli v0.8.0 (/opt/rustwide/workdir/crates/compatra-cli) updating edition from 2021 to 2024
[INFO] [stderr] crater-edition-check: compatra-runtime v0.8.0 (/opt/rustwide/workdir/crates/compatra-runtime) updating edition from 2021 to 2024
[INFO] [stderr] crater-edition-check: compatra-threading v0.8.0 (/opt/rustwide/workdir/crates/compatra-threading) updating edition from 2021 to 2024
[INFO] [stderr] crater-edition-check: machoscope-analysis v0.8.0 (/opt/rustwide/workdir/crates/machoscope-analysis) updating edition from 2021 to 2024
[INFO] [stderr] crater-edition-check: machoscope v0.8.0 (/opt/rustwide/workdir/crates/machoscope) updating edition from 2021 to 2024
[INFO] [stderr]     Checking compatra-arch v0.8.0 (/opt/rustwide/workdir/crates/compatra-arch)
[INFO] [stderr]    Compiling compatra-runtime v0.8.0 (/opt/rustwide/workdir/crates/compatra-runtime)
[INFO] [stderr]     Checking compatra-threading v0.8.0 (/opt/rustwide/workdir/crates/compatra-threading)
[INFO] [stderr]     Checking compatra v0.8.0 (/opt/rustwide/workdir/crates/compatra)
[INFO] [stderr]     Checking compatra-arch-arm64 v0.8.0 (/opt/rustwide/workdir/crates/compatra-arch-arm64)
[INFO] [stderr]     Checking machoscope-analysis v0.8.0 (/opt/rustwide/workdir/crates/machoscope-analysis)
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]    --> crates/machoscope-analysis/src/runtime_hooks.rs:169:17
[INFO] [stdout]     |
[INFO] [stdout] 169 |                 unsafe { std::env::set_var("COMPATRA_PAYLOAD_DUMP_DIR", old) };
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]    --> crates/machoscope-analysis/src/lib.rs:1:11
[INFO] [stdout]     |
[INFO] [stdout]   1 | #![forbid(unsafe_code)]
[INFO] [stdout]     |           ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]    --> crates/machoscope-analysis/src/runtime_hooks.rs:172:17
[INFO] [stdout]     |
[INFO] [stdout] 172 |                 unsafe { std::env::remove_var("COMPATRA_PAYLOAD_DUMP_DIR") };
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]    --> crates/machoscope-analysis/src/runtime_hooks.rs:190:9
[INFO] [stdout]     |
[INFO] [stdout] 190 |         unsafe { std::env::set_var("COMPATRA_PAYLOAD_DUMP_DIR", &dir) };
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `machoscope-analysis` (lib test) due to 3 previous errors
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] running `Command { std: "docker" "inspect" "0a30556d3c6a311e771a45862ff9f2eedbc12cc3a3d01f939e9a5db1f990b83c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "0a30556d3c6a311e771a45862ff9f2eedbc12cc3a3d01f939e9a5db1f990b83c", kill_on_drop: false }`
[INFO] [stdout] 0a30556d3c6a311e771a45862ff9f2eedbc12cc3a3d01f939e9a5db1f990b83c
